1. Field of The Invention
This invention relates generally to the field of packetized digital communications. More particularly, this invention relates to a method and apparatus for providing packetized data communication over the D-channel of an ISDN (Integrated Services Digital Network). The specific example provided relates to the transport of user data in X.25 packets over the D-channel.
2. Definitions And Abbreviations
Many of the following abbreviations and terms are used throughout this document. For ease of reference these terms are defined below:
CCITT- International Telegraph and Telephone Consultative Committee. An international body which establishes communications standards. PA1 CO- Central Office. PA1 DCE- Data Circuit Terminating Equipment. PA1 DISC- Disconnect Command. Used in layer 2 to tear down an established link. PA1 DTE- Data Terminal Equipment. PA1 FCS- Frame Check Sequence. A sequence used to check for errors in a packet. PA1 ISDN- Integrated Services Digital Network. A communications network which provides data and voice communications utilizing packet and circuit switched technologies. PA1 ISO- International Standards Organization. An international body of technical experts which proposes and establishes technical standards to be followed by industry. PA1 LAPB- Link Access Protocol Balanced. Layer 2 of X.25. PA1 LAPD- Link Access Protocol D Channel. Layer 2 of the ISDN D channel. PA1 OSI- Open System Interconnection. (See Reference [1.]). PA1 PAD- Packet Assembler Disassembler. Pertinent to X.25. PA1 Peer- Communicating entities at a given layer. PA1 PH- Packet Handler. The entity handling X.25 packets in the network. May reside in the CO. PA1 PSPDN- Packet Switched Public Data Network. PA1 SABM- Set Asynchronous Balanced Mode. A layer 2 command to request the establishment of a data link connection. Applicable to LAPB and LAPD. PA1 SAP- Service Access Point. The point of interaction between a service user and the service provider. PA1 SAPI- Service Access Point Identifier. The SAPI is used to identify the service access point on the network side or the user side of the user-network interface. PA1 TA- Terminal Adapter. Allows non-ISDN devices to interface to an ISDN. PA1 Termination, Complete- Complete peer-to-peer communication exists at a given layer. All procedures required for a peer-to-peer communication are employed. PA1 Termination, Partial- Partial procedures for peer-to-peer communication are implemented. The complete set of procedures employed in peer-to-peer communications are not utilized (e.g. Only error check conducted). PA1 VFN- Vendor Feature Node. One or more features provided to a subscriber by a vendor (e.g. utility meter reading, videophone service, etc.). PA1 X.25- A packet protocol defined by the CCITT. (see Reference [2.]). PA1 "2B+D"- Two Bearer (2B) channels for carrying user data Plus One signaling (D) channel used in ISDN. PA1 UA- Unnumbered Acknowledge. Used to acknowledge a SABM. PA1 (i) X.25 at layer 3 indicates the need for a call. PA1 (ii) LAPD sets up a link (using SABM, UA on LAPD) between user and network indicating a packet call. PA1 (iii) Once the call is set up, X.25 layer 3 is notified and layer 3 information is embedded into LAPD frame. LAPD is terminated at the CO-switch, while X.25 layer 3 is terminated in the PH. Close interaction between states of X.25 and LAPD exist. Therefore, all of the D channel must closely interact with X.25. PA1 (iv) Call Termination (Using DISC on LAPD) is similar to call setup. PA1 a. Maintain transparency of user data PA1 b. Achieve maximum independence of the protocols involved, to facilitate individual protocol modifications (if any), and least interaction between the protocols (independent state machines for the protocols involved). PA1 c. Facilitate flow control, sequencing and error detection by functionally decomposing these to be handled by the appropriate protocol. PA1 d. Achieve the above with minimum cost and technical complexity.
3. Background of The Invention
The ISO (International Standards Organization) has defined a 7 layer OSI (open systems interconnection) reference model that provides an architecture to serve as a basis for all future development of standards for worldwide distributed information systems. Thus a system conforming to OSI would be "open" to communications with any other system obeying the same standards anywhere in the world. The architecture calls for layering, which is used as a structured technique to allow the network of open systems to be logically decomposed into independent smaller subsystems.
This model is discussed in detail in References [1], [7], [8], [9] so that extensive treatment is not required here. But briefly, the three lowest layers of this model are the physical layer (layer 1), the Data Link Layer (layer 2) and the Network Layer (layer 3). The physical layer provides mechanical, electrical, functional and procedural standards to access the physical medium. The Data Link Layer (Layer D) provides the functional and procedural means to transfer data between network entities, and to detect and possibly correct errors that may occur in the physical layer. The network layer provides end to end logical connectivity. We will be concerned with Layer 2 and 3 only for purposes of this discussion.
The present invention is related to packet access to the D channel of an ISDN. By virture of its widespread acceptance, the X.25 packet format is addressed specifically, but this is not to be limiting as other packet formats are equally applicable to the present techniques. To more readily appreciate the features and advantages of the present invention, a brief discussion of X.25 and ISDN is in order.
The X.25 recommendations, as the title of the recommendation implies, is applicable to packet-switched devices. Layer 2 of X.25 is known as LAPB. In a Packet Switched Public Data Network (PSPDN), Layer 3 data is embedded in a LAPB packet and transmitted to its destination via layer 1. In other words, a layer 3 to LAPB, and LAPB to layer 1 communication exists.
In an ISDN (Integrated Services Digital Network), "basic rate" is commonly referred to as "2B+D", referring to two information (B) channels and one signaling (D) channel. Each B channel is 64 Kbps and is the bearer channel. The D channel is 16 Kbps and is primarily used for signaling. D channel information is transmitted as packets. User data can be transported on the D channel. Present implementations restrict this user data rate to 9600 bps on the D channel. Layer 2 of D channel is known as LAPD and all D channel information (including user data) has to be in LAPD frames according to proposed standards.
The protocol that is considered for user data in the preferred embodiment is X.25 due largely to its wide acceptance in various data communication systems. The X.25 packet communication is effected by transporting the packets across the user/network interface to the packet handler (PH) which exists in the network (generally at the CO). X.25 procedures for end-to-end connectivity are transacted between the PH and the end-user devices.
User data can presently be transported on the D channel only as X.25 packets, but the present invention is not to be limited to X.25 packets. X.25 packets are specifically designated as such by using SAPI=16 in LAPD. X.25 packets are directly routed by the ISDN to the packet handler (PH) for processing the X.25 information. The Packet Handler may be internal or external to the network. While a solution has been proposed for transporting user data packets over the D Channel of ISDN, this proposed solution has several drawbacks which will be outlined below.
According to this proposed solution the X.25 data the "I" field (or Information field of the X.25 packet) at layer 3 is embedded into a LAPD packet, and this is transported across the user network interface. At the Central Office (CO), layer 2 is terminated and the Information field (I) is passed directly to layer 3 of X.25. Two possible scenarios present themselves as described below.
In the first scenario as shown in FIG. 1, X.25 is directly interfaced to ISDN, that is, the PAD is in an ISDN TA. Here the X.25 and ISDN are closely coupled to allow X.25 functionality and LAPD functionality to coexist. In this scenario, raw data is accepted from the user and layer 3 X.25 formatting is done. The X.25 layer 3 frame is accepted from the X.25 PAD and the information is transferred to the "I" field of a LAPD frame after buffering. An appropriate "C" field, "A" field and FCS for LAPD is then appended and the packet is transmitted to the network over the LAPD link.
On receiving a LAPD packet from the network, the LAPD packet is first checked to assure that a proper FCS is present. If not, the packet is dropped. If the FCS is good, the "C" field is read to determine what type of packet is being received. The "I" field is then sent to the X.25 layer 3 of the PAD. At this point an acknowledgment is sent to the network indicating that the packet has been correctly received and all counters and buffers are updated. Raw data is then extracted from layer 3 X.25, and transmitted to the user.
To summarize, communication takes place as follows:
It should be noted that the only layer 2 entity is LAPD. LAPD is therefore responsible for all layer 2 functions like sequencing, flow control, error detection and recovery, buffering of data packets.
In a second scenario, as illustrated in FIGS. 2 and 3, an X.25 DTE Interfaces with an ISDN TA (Terminal Adapter). According to this second scenario, when a LAPB packet is received from the DTE the LAPB FCS is checked and the packet is dropped if an error is detected. If no error is detected, the value of the LAPB "C" field is placed in the "C" field of a LAPD packet.
The data link between the DTE and the TA is partially terminated. The TA accepts only those packets from the DTE that have a valid FCS (i.e only FCS checking is done). No acknowledgment is sent by the TA to the DTE on the LAPB link. The "I" field of the LAPB packet is used as the "I" field in the LAPD frame with the LAPD address (A), and FCS fields. This LAPD packet is sent to the network. At the network, layer 2 is terminated. That is, if the packet is good, a LAPD acknowledgment is sent to the user and the "I" frame is presented to (Layer 3 X.25) the PH. On receiving a LAPD packet from the network, the FCS is checked first, and the packet is dropped if an error is detected. If no error is detected, the value of the LAPD control field is placed in the "C" field of a LAPB packet. The "I" field is then transferred to the "I" field of the LAPB packet and a new FCS is calculated. The LAPB packet is then transmitted to the X.25 DTE. At the TA, the acknowledgment (LAPD) received from the network is converted to a LAPB acknowledgment and sent as a LAPB frame to the DTE. So, in effect, layer 3 X.25 is terminated between the user and the PH, while layer 2 (partial LAPB, LAPD) is terminated at the network. This implies that the parameters (modulus, window size, etc.) of the LAPB and LAPD link have to be the same.
These two schemes for interfacing X.25 with ISDN have a number of disadvantages. The following disadvantages, although perhaps not exhaustive, are indicative of the need to provide an improved interfacing scheme:
1. Close interactino between layer 3 X.25 and LAPD needs to exist. Such close coupling with LAPD implies coupling with the entire management function of D channel. Any changes in D channel or X.25 implies software changes which, with their close coupling, could be formidable.
2. Parameters of the DTE and TA have to be the same.
3. A "hybrid" Layer 2 exists between the user and network. LAPB and LAPD terminations are not clear.
4. In the case of the X.25 PAD, as mentioned above, the LAPD entity has to provide layer 2 functions for management of user data. Two of the functions which must be provided are the error detection and recovery. This is a major drawback. This implementation also implies that LAPD has to do the buffer management to prevent loss of data. This is an unnecessary burden imposed on LAPD.
Accordingly, it is apparent that there exists a need for an improved method and apparatus for interfacing X.25 packets to ISDN. Such a method and apparatus would allow layer 2 of D-Channel (LAPD) to transport this packet data with the following ideals:
The present invention provides such a scheme to facilitate transport of user data in X.25 packets over the D channel achieving the goals outlined. It should be noted that the scheme is equally applicable to other packet protocols and is not restricted to X.25. X.25 has been specifically mentioned keeping in mind its practicality and wide user application base, but should only be considered an example.